System and Method for Variably Regulating Order Entry in an Electronic Trading System

ABSTRACT

A system and method are provided to intelligently limit the frequency at which automated or semi-automated trading tools move or re-price orders in an exchange order book. A tolerance may be input that limits when one or more orders in the exchange order book are moved from one price to another. The system and method assist in reducing the number of orders that are entered into the system which can lead to reduced exchange transaction fees, lost queue position, and reduce network bandwidth consumption.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a divisional of U.S. patent application Ser. No.11/417,492, filed May 3, 2006, which is a continuation of U.S. patentapplication Ser. No. 10/403,333 filed Mar. 31, 2003, now U.S. Pat. No.7,904,370, entitled “System and Method for Variably Regulating OrderEntry in an Electronic Trading System,” the contents of which are fullyincorporated herein by reference.

FIELD OF INVENTION

The present invention is directed towards electronic trading.Specifically, the present invention is directed to variably regulatingorder entry in electronic trading related systems.

BACKGROUND

Trading methods have evolved from a manually intensive process to atechnology enabled, electronic platform. With the advent of electronictrading, a user or trader can be in virtually direct contact with themarket, from practically anywhere in the world, performing nearreal-time transactions, and without the need to make personal contactwith a broker.

Electronic trading is generally based on a host exchange, one or morecomputer networks, and client devices. In general, the host exchangeincludes one or more centralized computers to form the electronic heart.Its operations typically include maintaining an exchange order book thatrecords unexecuted orders, order matching, providing price and orderfill information, and managing and updating a database that records suchinformation. The host exchange is also equipped with an externalinterface that maintains uninterrupted contact to the client devices andpossibly other trading-related systems.

Using client devices, traders link to the host exchange through one ormore networks. A client device is a computer such as a personalcomputer, laptop computer, hand-held computer, and so forth that hasnetwork access. A network is a group of two or more computers or deviceslinked together, which can be characterized by topology, protocol, andarchitecture. For example, some market participants may link to the hostthrough a direct network connection such as a T1 or ISDN. Someparticipants may link to the host exchange through direct networkconnections and through other common network components such ashigh-speed servers, routers, and gateways. The Internet, a well-knowncollection of networks and gateways, can be used to establish aconnection between the client device and the host exchange. There aremany different types of wired and wireless networks and combinations ofnetwork types known in the art that can link traders to the hostexchange.

Sometimes, on their machines, traders use automated or semi-automatedtrading tools that automatically or semi-automatically send orders tothe exchange. Such trading tools are usually provided to, among otherthings, facilitate fast and accurate order entry. For instance, anautomated tool might quickly calculate one or more order parameters,such as order price or order quantity, based on market conditions orsome other reference condition, and then automatically send an orderwith these parameters to an exchange for matching. And according to manyexisting and popular exchanges today, orders are electronically enteredin an exchange order book in the sequence in which they are entered intothe market (a first-in, first-out, or FIFO matching system). Based onthis sequence, and the availability of market quantity, orders arefilled, with priority given to the first order entered, then the second(next) order entered, and so forth.

Using a conventional automated or semi-automated tool, however, when themarket conditions change, the trading tool must usually calculate theone or more order parameters and then move or re-price the order in theexchange order book to a new price associated with the new orderparameter(s). As a result, the original order position in the exchangeorder book is lost and the trader might also be charged each time theorder is moved or re-priced in the market. Therefore, for the samereason that automated or semi-automated trading tools make desirabletrading tools (e.g., they can rapidly fire orders and/or order changesinto the market to capture market opportunities before the competition),such tools can also make undesirable trading tools because, among otherthings, they can quickly consume network bandwidth and they can lead toa significant increase in exchange related fees.

It is therefore desirable to offer one or more tools that can regulateorder entry in trading related tools, and in particular, regulate orderentry in trading tools that have automated or semi-automated order entrysystems.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram that represents a trading system in which thepreferred embodiments may be implemented with to limit the frequency atwhich a trading tool moves or re-prices orders in a market at anexchange;

FIG. 2 is a block diagram that represents a client device of FIG. 1 ingreater detail in which the preferred embodiments may be implemented on;

FIG. 3 is a block diagram that illustrates the relationship between asynthetically created spread and its underlying legs which is later usedin understanding how the preferred embodiments may regulate order entryof an automatic spread trading tool;

FIG. 4 is a block diagram that illustrates the relationship shown ofFIG. 3 except that a spread order has been placed in the spread, and asa result, the automated spread trading has placed orders in the legs toachieve the spread;

FIG. 5 is a flowchart representation depicting steps performed by avariable re-pricing system in accordance with the preferred embodimentsin addition to steps taken by an automated spread trading tool;

FIG. 6 is a block diagram that represents a graphical user interface forinputting and/or displaying ranges and parameters associated with thepreferred embodiments;

FIG. 7 is a block diagram that represents a display of a spread marketwhich is used to illustrate the preferred process shown in FIG. 5; and

FIGS. 8-9 are block diagrams that represent displays of legs of thespread market of FIG. 7 which are used to illustrate the preferredprocess shown in FIG. 5.

DETAILED DESCRIPTION

Sometimes a trader is willing to limit the moving or re-pricing oforders in a market when changes in market conditions are ratherinsignificant to the trader. Not only can this maintain the trader'sposition in the order queue at the exchange, it may reduce the number ofexchange transactions and fees associated with moving or re-pricingorders in the market, and it may also reduce network bandwidthconsumption. Therefore, the preferred embodiments are provided tointelligently limit the frequency at which automated or semi-automatedtrading tools move or re-price orders in an exchange order book.According to the preferred embodiments, a trader can program rangeswhich can each represent varying levels of acceptable movement in themarket. Then, if market conditions remain within an acceptable levelaccording to one of the particular ranges, the preferred embodimentsrefrain the trading tools from moving or re-pricing the order(s) in themarket. If the market conditions move outside of the acceptable levelaccording to one of the particular ranges, the preferred embodimentsallow the trading tools to move or re-price the order(s) in the market.

For ease of explanation, the preferred embodiments are described incombination with an automated spread trading tool. Accordingly, thepreferred embodiments assist the automated spread trading tool byregulating the automatic moving or re-pricing of orders in legs toachieve a desired spread. One such automated spread trading tool isdescribed in U.S. patent application Ser. No. 10/137,979, filed on May3, 2002 and entitled, “System and Method for Performing Automatic SpreadTrading,” the contents of which are incorporated herein by reference.Additionally, the incorporated application describes re-pricing ofquotes, which is a feature to limit the number of times a trading toolre-quotes the legs. The preferred embodiments described herein build onthat concept by allowing a user to input more than one range of insideand outside parameters to variably and more flexibly control order entryof trading systems, and in particular, automated and semi-automatedtrading tools. Additionally, the preferred embodiments allow a user toset one or more ranges for each leg of a spread. Using the teachingsdescribed herein the preferred embodiments can also accommodate any typeof trading strategy.

Although the preferred embodiments are described in combination with anautomated spread trading tool, it should be understood that thepreferred embodiments may be embodied in many different forms with manydifferent types of trading tools. The trading tools which might receivegreat benefit from the preferred embodiments include those that useautomated or semi-automated order entry systems. Then, the preferredembodiments can automatically regulate the frequency at which thoseautomated or semi-automated order entry systems move or re-price ordersin a market. Nonetheless, trading tools which have non-automated orderentry systems might also receive a benefit from the preferredembodiments, therefore the present invention should not be construed aslimited to the embodiments set forth herein. The preferred embodimentsnow will be described more fully hereinafter with reference to theaccompanying drawings.

I. An Overview of a System Architecture

FIG. 1 is a block diagram that illustrates an electronic trading system100 in accordance with the preferred embodiments. The system 100includes one or more exchanges 102, 104, 106 and one or more clientdevices 108, 110, 112. Intermediate devices such as gateways 114, 116,118, routers (not shown), and other such types of network devices may beused to connect network 120 to networks 122, 124, 126 so that clientdevices 108, 110, 112 and exchanges 102, 104, 106 can communicate marketinformation. It should be understood that the present invention is notlimited to any particular system configuration. For example, networks122, 124, and 126 could represent the same network, network 120 couldrepresent the same network as networks 122, 124, and 126, or clientdevices 108, 110, 112 could connect separately to gateways 114, 116,118. Of course, there are many other system configurations on which thepreferred embodiments may be implemented.

A. Exchange

Any of exchanges 102, 104, 106 may represent, for example, the LondonInternational Financial Futures and Options Exchange (LIFFE), theChicago Board of Trade (CBOT), the New York Stock Exchange (NYSE), theChicago Mercantile Exchange (CME), the Exchange Electronic Trading(“Xetra,” a German stock exchange), or the European Exchange (“Eurex”),or any other exchange that participates in electronic trading. Exchanges102, 104, 106 might also refer to other facilities, which include basicto more complex systems that automatically match incoming orders. Theseexample exchanges and other exchanges are well known in the art.Communication protocols required for connectivity to one of theseexchanges are also well known in the art.

Exchanges 102, 104, 106 allow traders to log onto a market to tradetradeable objects. As used herein, that the term “tradeable objects,”refers simply to anything that can be traded with a quantity and/orprice. It includes, but is not limited to, all types of tradeableobjects such as financial products, which can include, for example,stocks, options, bonds, futures, currency, and warrants, as well asfunds, derivatives and collections of the foregoing, and all types ofcommodities, such as grains, energy, and metals. The tradeable objectmay be “real,” such as products that are listed by an exchange fortrading, or “synthetic,” such as a combination of real products that iscreated by the user. A tradeable object could actually be a combinationof other tradeable object, such as a class of tradeable objects.

An exchange 102, 104, 106 can implement numerous types of orderexecution algorithms, sometimes the type of algorithm depends on thetradeable object being traded. The preferred embodiments may be adaptedby one skilled in the art to work with any particular order executionalgorithm. Some example order execution algorithms includefirst-in-first-out and pro rata algorithms. The first-in-first-out(FIFO) algorithm, used for some markets listed with Eurex for example,gives priority to the first person to place an order. The pro rataalgorithm, used for some markets listed with LIFFE for example, splitsall orders for the same price. The present invention is not limited toany particular type of order execution algorithm.

Regardless of the type of order execution algorithm used, each exchange102, 104, 106 preferably provides similar types of information tosubscribing client devices 108, 110, 112. Market information may includedata that represents just the inside market. The inside market is thelowest sell price (best ask) and the highest buy price (best bid) at aparticular point in time. Market information may also include marketdepth. Market depth refers to quantities available at the inside marketand can also refer to quantities available at other prices away from theinside market. The quantity available at a given price level is usuallyprovided by the host exchange in aggregate sums. In other words, anexchange usually provides the total buy quantity and the total sellquantity available in the market at a particular price level in its datafeed. The extent of the market depth available to a trader usuallydepends on the exchange. For instance, some exchanges provide marketdepth for all (or most) price levels, while some provide only quantitiesassociated with the inside market, and others may provide no marketdepth at all. Additionally, exchanges 102, 104, 106 can offer othertypes of market information such as the last traded price (LTP), thelast traded quantity (LTQ), and order fill information.

B. Gateway

Gateways 114, 116, 118 are devices such as a mainframe,superminicomputer, minicomputer, workstation, microcomputer that connectnetwork 120 to networks 122, 124, 126 so that market information can besuccessfully passed between client devices 108, 110, 112 and exchanges102, 104, 106. Gateways 114, 116, 118 receive market information fromexchanges 102, 104, 106 and convert it to a form compatible with theprotocols used by client devices 108, 110, 112 using conversiontechniques known in the art. Also, as known by those skilled in the art,gateways 114, 116, 118 may have one or more servers to support the datafeeds, such as a price server for processing price information, an orderserver for processing order information, and a fill server forprocessing fill information. A trader at one of client devices 108, 110,112 can subscribe to price information, order information, and fillinformation for a particular market hosted at exchanges 102, 104, 106.Gateways 114, 116, 118 also receive transaction information, such asorders, order changes, queries, etc. from client devices 108, 110, 112and forward that information to corresponding exchanges 102, 104, 106.

C. Client Device

Client devices 108, 110, 112 are devices that provide an interface fortraders to trade at one or more markets listed with one, some, or all ofexchanges 102, 104, 106. Some examples of client devices include apersonal computer, laptop computer, hand-held computer, and so forth.Client devices 108, 110, 112, according to the preferred embodiments,include at least a processor and memory. The processor and memory, whichare both well known computer components, are not shown in the Figure forsake of clarity. Preferably, the processor has enough processing powerto handle and process the various types of market information. Ofcourse, the more market information which is received and processed, themore processing power is preferred. However, any present day processorhas enough capability to perform at least the most basic part of thepresent invention.

Memory may include computer readable medium. The term computer readablemedium, as used herein, refers to any medium that participates inproviding instructions to processor for execution. Such a medium maytake many forms, including but not limited to, non-volatile media,volatile media, and transmission media. Non-volatile media includes, forexample, optical or magnetic disks, such as storage device. Volatilemedia includes dynamic memory, such as main memory or RAM (random accessmemory). Common forms of computer-readable media include, for example, afloppy disk, a flexible disk, hard disk, magnetic tape, or any othermagnetic medium, a CD-ROM. any other optical medium, punch cards, papertape, any other physical medium with patterns of holes, a RAM, a PROM,and EPROM, a FLASH-EPROM, and any other memory chip or cartridge, or anyother medium from which a computer can read.

Client devices 108, 110, 112 receive market information from any ofexchanges 102, 104, 106. According to the preferred embodiments, marketinformation is displayed to the trader(s) on the visual output device ordisplay device of client devices 108, 110, 112. The output device can beany type of display. For example, the display could be a CRT-based videodisplay, an LCD-based or a gas plasma-based flat-panel display, adisplay that shows three-dimensional images, or some other type ofdisplay. The present invention is not limited to any particular type ofdisplay.

Upon viewing the market information or a portion thereof, a trader maywish to send orders to an exchange, cancel orders in a market, changeorders in a market, query an exchange, and so on. To do so, the tradermay input various commands or signals into the client device 108, 110,112, for example, by typing into a keyboard, inputting commands througha mouse, or inputting commands or signals through some other inputdevice. Upon receiving one or more commands or signals, client devices108, 110, 112 preferably generate transaction information. For instance,a trader may click a mouse button to initiate an order to buy atradeable object. Then, transaction information would include an orderto buy a particular quantity of the tradeable object at a particularprice. There are many different types of messages and/or order typesthat can be submitted, all of which may be considered various types oftransaction information. Once generated, transaction information is sentfrom client device 108, 110, 112 to host exchange 102 over network(s)120, 122, 124, 126.

FIG. 2 shows an overview of client device 200 which is similar to thetype of client devices 108, 110, 112 shown in FIG. 1. Client device 200can be any particular type of computing device, examples of which wereenumerated above with respect to the client devices. According to thepreferred embodiment, client device 200 has trading application 202stored in memory that when executed arranges and displays marketinformation in many particular ways, usually depending on how the traderprefers to view the information. Trading application 202 may alsoimplement an automated or semi-automated trading tool such as theautomated spread trading tool that automatically sends orders intounderlying legs to achieve a spread. Additionally, the preferredembodiments for regulating the trading tools may be part of tradingapplication 202. Preferably, trading application 202 has access tomarket information through API 204 (or application programminginterface) and trading application 202 can also forward transactioninformation to exchange 210 via API 204. Alternatively, API 204 could bedistributed so that a portion of the API rests on the client device 200and a gateway, or at the exchange 210. Additionally, trading application202 may receive signals from input device 212 via input device interface206 and can be given the ability to send signals to display device 214via display device interface 208.

Alternatively, the preferred embodiments may be a separate program fromtrading application 202, but still stored in memory and executed onclient device 200. In another alternative embodiment, the preferredembodiments may be a program stored in memory and executed on a deviceother than client device 200. Example devices may include a gateway(e.g., gateways 114, 116, or 118 in FIG. 1) or some other well knownintermediary device.

II. Automatic Spread Trading Overview

The preferred embodiments are described as variably regulating thefrequency at which an automated spread trading tool moves or re-pricesorders in an exchange order book. However, as pointed out earlier, thepresent invention is not limited for use with an automated spreadtrading tool, but may be applied to any particular trading tool that hasan order entry system where limiting the frequency at which orders aremoved or re-priced in the market may be beneficial. For example, anothertype of trading tool that has an automated order entry system and maybenefit using the preferred embodiments is described in U.S. patentapplication Ser. No. 10/284,584, filed on Oct. 31, 2002 and entitled,“System and Method for Automated Trading,” the contents of which areincorporated herein by reference. One skilled in the art may readilyadapt the preferred embodiments to work with this type of automatedtrading tool, for example, or some other type of trading tool using theteachings described herein.

To assist in understanding how an automated spread trading tool mightwork, a general description is provided below. However, an automatedspread trading tool and its functions are described in greater detailand may be referenced in an already incorporated U.S. patent applicationSer. No. 10/137,979, filed on May 3, 2002 and entitled, “System andMethod for Performing Automatic Spread Trading.”

According to one embodiment of an automated spread trading tool, atrader can select two or more individual tradeable objects underlyingthe spread, referred to herein as “legs” of the spread. The automaticspread trading tool preferably generates a spread data feed based oninformation in the legs and based on spread setting parameters, whichare configurable by a user. The spread data feed is communicated to agraphical user interface manager where it is displayed in a spreadwindow and where the legs may also be displayed. At the terminal, theuser can enter orders in the spread window and the automated spreadtrading tool will automatically work the legs to achieve, or attempt toachieve, the spread. The spread is sometimes referred to herein as asynthetically created spread or synthetic spread.

FIG. 3 illustrates the relationship between a synthetically createdspread 300 and its underlying “N” legs 302, where N can be any numbergreater than 1. For example, a spread might have two legs, three legs,four legs, and so on. Generation of the spread 300 may be based onrelationships that exists between the legs 302. Some relationships whichmight be used are described in the above incorporated U.S. patentapplication Ser. No. 10/137,979. Also, one skilled in the art of tradingmay have their own relationships in which they prefer to use. It is notnecessary to know these relationships, however, to understand thepreferred embodiments.

FIG. 4 illustrates the same relationship between spread 300 and itsunderlying legs 302 as in FIG. 3, except that a spread order 304 hasbeen placed. When a trader enters an order to buy or to sell the spread(e.g., spread order 304) in a synthetic market, the automated spreadtrading tool automatically places orders in the appropriate legs toachieve or attempt to achieve the desired spread 304. For example, toachieve spread order 304 the automated spread trading tool mayautomatically enter orders 306, 308, . . . 310 into the underlying legs302 (e.g., “Leg 1,” “Leg 2,” . . . “Leg N”). The automated spreadtrading tool may, among other things, calculate the quantities and theprices for the orders 306, 308, . . . 310 based on market conditions inthe other legs and one or more parameters. For example, according to onetrading strategy, consider if “Leg 1 Order” 306 is a buy order, then theprice of order 306 may be based on the best bid price of “Leg 2” and onthe best bid price of each leg through “Leg N.” Of course, depending onthe trading strategy, the price of order 306 might be based only on someof the legs and not on all N legs. Alternatively, other tradingstrategies may be used to determine the price and quantities of theorders. For example, the price of buy order 306 may be determined basedon the best ask price of “Leg 2” and on the best ask price of each legthrough “Leg N” (or on only some of the N legs). Of course, the orderparameters of an order in one leg can be based on other types of marketconditions in the other legs such as the last traded price (LTP), thelast traded quantity (LTQ), a theoretical value, or some other referencepoint.

According to the preferred embodiments, as the market conditions foreach leg move, an effective spread order price may be calculated. Forexample, if market conditions for “Leg 1” change, then an effectivespread order price associated with order 304 may be determined toreflect the new market conditions. Similarly, if market conditions for“Leg 2” change, then an effective spread order price associated withorder 304 may be determined. Using a conventional automated spreadtrading tool if the effective spread order price is different from thedesired spread order price, then the automated spread trading tool wouldmove or re-price the leg orders in an exchange order book to maintainthe desired spread order price. In particular, the leg order(s) would bedeleted from the exchange and new leg order(s) would be sent to theexchange to maintain the desired spread price. There are other ways tochange an order which may provide similar results, such as a changeorder request, etc. However, as mentioned above, a trader may be chargedtransaction fees for moving or re-pricing leg orders in the exchangeorder book. Additionally, by deleting the previous leg order from theexchange, the trader would have lost his or her position in the exchangeorder queue.

Alternatively, effective prices of spread orders are continuouslycalculated. For example, the preferred embodiments may be programmed tocalculate effective spread order prices every second or at some othertime interval. Using this alternative approach, it is not necessary tomonitor changes in market conditions before an effective spread orderprice is calculated. Similarly to the above embodiment, however, using aconventional automated spread trading tool, if the effective price ofthe spread order is different from the desired price of the spreadorder, then the automated spread trading tool would move or re-price theleg orders in the exchange order book to maintain the desired spreadprice being sought.

In an alternative embodiment, the effective prices of orders in the legsmay be calculated rather than calculating an effective spread orderprice as performed in the above embodiments. In particular, as themarket conditions for each leg move, the effective prices of orders inthe other legs may be calculated such that the desired spread pricebeing sought by the trader can be maintained. For example, if marketconditions for “Leg 1” change, then the effective prices of orders basedon the market conditions in “Leg 1,” such as order 308 through order 310may be calculated to maintain the spread. If market conditions for “Leg2” change, then the effective prices of orders based on marketconditions in “Leg 2,” such as order 306 through order 310 may becalculated to maintain the spread. Further, to maintain the desiredspread price being sought, using a conventional automated spread tradingtool if the effective prices of the leg orders are different from theprices of the leg orders, then the automated spread trading tool wouldmove or re-price the leg orders in an exchange order book. Inparticular, the leg order(s) would be deleted from the exchange and anew leg order(s) at the effective price would be sent to the exchange.However, as mentioned above, a trader may be charged transaction feesfor moving or re-pricing leg orders in the exchange order book.Additionally, by deleting the previous order from the exchange, thetrader would have lost his or her position in the order queue.

Also, in another alternative embodiment, the effective prices of ordersin the other legs are continuously calculated such that the desiredspread price being sought by the trader can be maintained. For example,the preferred embodiments may be programmed to calculate effective legorder prices every second or at some other time interval. Using thisalternative approach, it is not necessary to monitor changes in marketconditions before the effective leg prices are calculated. Similarly tothe above embodiment, however, to maintain the desired spread pricebeing sought, using a conventional automated spread trading tool, if theeffective prices of the leg orders are different from the prices of theleg orders, then the automated spread trading tool would move orre-price the leg orders in the exchange order book.

According to the preferred embodiments, however, before actually movingor re-pricing the leg orders in the exchange order book, the preferredembodiments determine whether it is necessary to move or re-price theleg orders based on the differences in the desired spread order priceand the effective spread order price (or alternatively, the differencein the leg order prices and the effective leg order prices) and anacceptable level of market movement for which the trader is willing toallow. In other words, the preferred embodiments intelligently limit thefrequency at which the automated spread trading tool moves or re-pricesleg orders in the exchange order book.

According to the preferred embodiments, if the price difference betweenthe effective spread order price and the desired spread order pricefalls within an acceptable level given in one of the ranges, then theleg orders preferably do not change in the exchange order book. If theprice difference between the effective spread order price and thedesired spread order price is outside of the acceptable level given inone of the ranges, then the leg orders are preferably moved or re-pricedin the exchange order book to maintain the spread at the effectivespread order price. The preferred embodiments allow for variable levelsof acceptability or tolerances by having more than one range ofparameters. Moreover, each leg of the spread may have its own particularset of ranges.

According to the alternative embodiments, if the price differencebetween the effective leg order price and the leg order price fallswithin an acceptable level given in one of the ranges, then the legorders preferably do not change in the exchange order book. If the pricedifference between the effective leg order price and the leg order priceis outside of the acceptable level given in one of the ranges, then theleg orders are preferably moved or re-priced to the effective leg orderprice in the exchange order book.

The preferred process including the variable levels of acceptability ortolerances is outlined in more detail with respect to the flowchartshown in FIG. 5.

III. Variable Re-Pricing of Orders

A method in accordance with the preferred embodiments is now describedwith respect to the flowchart in FIG. 5. The method is described asvariably limiting the frequency at which an automated spread tradingtool moves or re-prices orders in an exchange order book. However, aportion of the method is used to illustrate steps that the automatedspread trading tool might take to perform its function. Such steps arenot necessarily important to the understanding of the present invention,nonetheless, the steps show how the preferred embodiments may beintegrated with the automated spread trading tool. It should beunderstood, however, that the flowchart in FIG. 5 provides only anillustrative description, and that more or fewer steps may be includedin the flowchart, and/or the steps may occur in one or more orders whichare different from the order of steps shown in FIG. 5. As mentionedabove, it should also be understood, however, that the preferredembodiments can be readily applied to any other trading relatedapplication that has an automatic, semi-automatic, or non-automaticorder entry system using the teachings described herein.

At step 502, a market update for one of the legs is received. A marketupdate refers to any type of message which is usually sent from theexchange (or some other order matching system) to notify subscribingclient devices that a change in the market has occurred. In particular,market updates are used to synchronize market information represented inthe exchange order book with market information represented in orderbooks at the client devices. For instance, one type of market updatemight indicate that the best bid price has changed or that the bestoffer price has changed. Another type of market update might indicatethat a quantity has changed at a certain price.

At step 504, based on the market update received at step 502 theautomated spread trading tool may determine to calculate an effectivespread order price. As previously described above, according to anembodiment of an automated spread trading tool, the price of an order inone leg may be based on an inside market price (e.g., best bid or bestask) in one or more other legs. Therefore, when the inside market pricehas changed in a leg, it can have an effect on an order in another legand the spread order. Also, when the quantity available at the insidemarket has changed, this too can have an effect on an order in anotherleg and the spread order. Consequently, the automated spread tradingtool might be looking at different variables such as price andquantities to determine if the market conditions have changed. Toillustrate how a spread trading tool might react to changing marketconditions consider the following example scenarios involving atwo-legged spread referred to as “Spread” which has “Leg 1” and “Leg 2”as its underlying legs. Also assume that the spread has a one-to-onespread ratio. As with any examples provided in this application, thefollowing examples are not meant to be exhaustive in covering everypossible scenario.

A. EXAMPLE 1

Assume that a trader has placed a buy order for 10 at 75 in the spread.Then, the automated spread trading tool would automatically place anorder to buy 10 in Leg 1 and an order to sell 10 in Leg 2 because of theone-to-one spread ratio. According to one trading strategy, the buyorder price in Leg 1 would be based in part on the best bid price in Leg2, and the sell order price in Leg 2 would be based in part on the bestoffer in Leg 1. Also assume that the best bid price in Leg 2 has aquantity of 25. Subsequently, the spread trading tool received a marketupdate for Leg 2 indicating that the quantity at the best bid price hasbeen reduced to 15. However, the best bid price in Leg 2 has notchanged. Therefore, in this example, the automated spread trading toolwould preferably determine that the market conditions for Leg 2 did notchange enough to move or re-price the order in Leg 1 to maintain thedesired spread for 10 at 75. The spread trading tool would preferablyproceed to step 516.

B. EXAMPLE 2

Assume the same facts as given in Example 1 above, except consider whenthe automated spread trading tool received a market update for Leg 2indicating that the best bid price has changed. The spread trading toolmay need to calculate an effective spread order price and may ultimatelyneed to move or re-price the order in Leg 1 to maintain the desiredspread for 10 at 75. Under this example scenario, the spread tradingtool would preferably proceed to step 506.

C. EXAMPLE 3

Examples 1 and 2 above used the inside market prices to determine amarket change. However, it should also be understood that an automatedspread trading tool may use other reference points when determining thata market change has occurred. For example, if there is not enoughquantity at the best bid price, the automated spread trading tool mightlook to other levels of market depth outside of (or in addition to) theinside market to satisfy the order. Then, instead of (or in addition to)using the inside market prices, it might take the average price or someother price based on the levels of depth it used, however, this conceptis described more with respect to step 506. Various approaches todetermining when a market change has occurred may be used, such as byselecting “Adjust For Market Depth,” which are further described in theabove incorporated U.S. patent application Ser. No. 10/137,979, filed onMay 3, 2002 and entitled, “System and Method for Performing AutomaticSpread Trading.” Then, the average price or some other price found maybe used to calculate an effective spread order price, which is describedmore below with respect to step 506.

At step 506, the spread trading tool calculates an effective spreadorder price. The effective spread order price may be based on orders inlegs in which the market has not moved and the new inside market priceof the leg which has received the market update. As previously mentionedabove, instead of using the inside market price to calculate aneffective spread order price, the average price or some other pricefound may be used.

According to the preferred embodiments, any particular relationship maybe used to calculate the effective spread order price and therefore thepresent invention is not limited as such. However, for completeness,U.S. patent application Ser. No. 10/137,979, entitled, “System andMethod for Performing Automatic Spread Trading” may be referred to forsome example relationships to determine a spread order price based oninformation in the other legs to maintain a spread order price.

According to another embodiment, instead of receiving and waiting for amarket update, the automated spread trading tool may continuouslycalculate the effective spread order price. For example, the preferredembodiments may be programmed to calculate the effective spread orderprice every second or at some other time interval. If this embodiment isused, then steps 502 and 504 are not necessary as the effective spreadorder price is calculated at predetermined time intervals instead ofwhen a market update is received.

At step 508, the change between the desired spread order price and theeffective spread order price (e.g., found in step 506) is determined. Inother words, the number of price units between the desired spread orderprice and its effective spread order price is determined. To illustratestep 508, consider a desired spread order price of “50.” Subsequently,assume that market conditions changed in a leg for which the spreadorder at “50” is based in part upon. Then, according to step 506, aneffective spread order price would be preferably calculated. Let ussuppose the effective spread order price is “52.” According to step 508,the change in this example scenario is equal to the absolute differencebetween the desired spread order price of “50” and the effective spreadorder price of “52,” which according to this example is “2.”

At step 510, one or more of the appropriate tolerance parameters areretrieved. A trader can input one or more ranges such that each rangerepresents an acceptable level of movement in the market. In thepreferred embodiments, these ranges are preferably used to limit thefrequency at which automated or semi-automated trading tools move orre-price orders in an exchange order book. There can be as many rangesas the trader prefers. Moreover, each leg of the spread may have its ownset of one or more ranges.

According to the preferred embodiments, each range has parametersassociated with it, referred to as an “inside parameter” and an “outsideparameter.” Using the inside parameter and/or the outside parameter, theautomated spread trading tool will preferably refrain from moving orre-pricing orders when the change between the desired spread order priceand the effective spread order price (e.g., found in step 506) remainswithin the tolerance levels given by at least one of the inner and/orouter parameters. Additionally, the automated spread trading tool willpreferably move or re-price appropriate leg orders only when the changebetween the desired spread order price and the effective spread orderprice (e.g., found in step 506) is determined and that the change isbeyond the tolerance level associated with the inner and/or outerparameters. The inside and outside parameters are similar to inside andoutside slop parameters that are described in great detail in the aboveincorporated U.S. patent application Ser. No. 10/137,979, entitled,“System and Method for Performing Automatic Spread Trading.” The readeris encouraged to reference the above patent application for informationregarding the inside and outside slop parameters. It should also beunderstood that the preferred embodiments do not require having twoparameters (e.g., the inside parameter and the outside parameter), butmay be implemented using only one parameter or many parameters,whichever is desired.

According to the preferred embodiments, a set of one or more ranges ofinside and/or outside parameters which are retrieved preferablycorrespond to the leg for which an order may be moved or re-priced. Forexample, consider when there are two legs underlying a spread. Assumethat the order in leg 2 is based on the market conditions in leg 1 andthe market conditions in leg 1 have just changed. The difference in theeffective and desired spread order prices would preferably be determinedin step 508. Next, the preferred embodiments would retrieve the set ofrange(s) of inside and/or outside parameters that correspond to leg 2.Then, the preferred embodiment may determine which range to use (ifthere is more than one) out of the set. For example, in the preferredembodiment, if there is more than one range, the difference between thespread order price and the inside market determines the range. In otherwords, each range includes a set of price levels and if the desiredspread order price is one of those price levels, then that particularrange is used. The concept of ranges and how they are used in thepreferred embodiments are described more below.

At step 512, once a range is retrieved, the spread order pricedifference or change is compared with the inside parameter or theoutside parameter (whichever is relevant to use) given in that range todetermine if one of the leg orders should be moved or re-priced.Alternatively, the leg order price difference or change is compared withthe inside parameter or outside parameter given in that range todetermine if one of the leg orders should be moved or re-priced.

According to the preferred embodiments, the change in spread orderprices (e.g., determined in step 508) is compared with the insideparameter or outside parameter (e.g., retrieved from step 510). If themagnitude of the change is within the appropriate inside and/or outsideparameters, then preferably no change is necessary at step 516. Forexample, the trader is willing to let the spread trade for more or less(e.g., depending on if the spread order is a buy or a sell order) thanthe desired spread order price indicates. If the magnitude of the changefalls outside of the appropriate inside and/or outside parameters, theone or more leg orders under consideration are preferably re-priced andmoved in the market to maintain the desired spread order price, at step514.

IV. Ranges and Parameters

As pointed out earlier, each leg preferably has its own set of one ormore ranges. Preferably, these sets of ranges are determined in advancebefore actual trading takes place. It is also envisioned, however, thatmultiple legs can share a set of one or more ranges, if so desired.Additionally, each range and its parameters are preferably configurable.Moreover, the ranges and/or parameters may be dynamic, for example, theycan be driven by an equation or an outside source.

Table 1 below gives an example of what a set of one or more ranges mightinclude. In particular, Table 1 below shows three ranges and theircorresponding tolerance parameters, although any number of ranges may besetup. The values in Table 1 can be used for comparing with both buyspread orders and sell spread orders. Alternatively, values in Table 1may be used for comparing with only buy spread orders and a separatetable could be used for comparing with only sell spread orders.Nonetheless, when a desired spread order falls within a given range,then that range's parameters are preferably used to evaluate whether aleg order should be moved or re-priced to maintain the desired spreadorder price.

For ease of illustration, Table 1 is described with respect to thesynthetic spread shown in FIG. 7. Referring briefly to FIG. 7, anexample of a generated spread data feed is displayed in a spread window.For ease of explanation, this particular spread is based on two legs.The market data displayed in the spread window was calculated usingrelationships that exist between the two legs, each leg is shown inFIGS. 8 and 9, respectively.

According to one embodiment, the ranges for buy spread orders preferablystart from the best offer, and the ranges for the sell spread orderspreferably start from the best bid. For example, referring to FIG. 7,the best offer is −50 and for any buy spread orders, range 1 (e.g.,0≦X<5) would include price levels or ticks −50.5, −51.0, −51.5, and−52.0. Similarly, the best bid is −51.0 and for any sell spread orders,range 1 would include price levels or ticks −50.5, −50.0, −49.5, and−49.0. For any buy spread orders, range 2 (e.g., 5≦X<10) corresponds toprice levels −52.5, −53.0, −53.5, and −54.0. For any sell spread orders,range 2 includes price levels −48.5, −48.0, −47.5, and −47.0. For anybuy spread orders, range 3 (e.g., 10≦X<∞) corresponds to price levels−54.5, −55.0, −55.5, −60.0, and so on. For any sell spread orders, range3 corresponds to price levels −46.5, −46.0, −45.5, −45.0, and so on.

TABLE 1 Range No.: 1 2 3 Range: 0 ≦ X < 5 5 ≦ X < 10 10 ≦ X < ∞ Inside:1 3 5 Outside: 2 3 5

Alternatively, the ranges could correspond to integer price levels. Forexample, for any buy spread orders, range 1 might include integer pricelevels −50, −51, −52, −53, and −54 rather than tick levels used directlyabove. For any sell spread orders, range 1 might include integer pricelevels −50, −49, −48, −47, and −46. The present invention may utilizeany unit of measure to define the ranges and therefore the presentinvention is not limited to the increments used or described in thisapplication.

Moreover, the buy side ranges could start from the best bid or someother designated reference point (e.g., last traded price (LTP), lasttraded quantity (LTQ), a theoretical price, or some other referencepoint), and the sell side ranges could start from the best offer or someother designated reference point (e.g., last traded price (LTP), lasttraded quantity (LTQ), a theoretical price, or some other referencepoint). Therefore, it should be understood that the present invention isnot limited to where a range starts and ends or what price levels arange is referenced from.

FIG. 6 shows a display 600 for inputting range values and parameters.According to display 600, there are three ranges 602, 604, and 606,although any number of ranges may be shown. For example, only one rangemight be shown, or only two ranges, or only four ranges, and so on.Also, only one parameter may be used, if so desired. Range 602 has aninside parameter and an outside parameter designated in fields 608, 614,respectively. Referring to the display 600, range 604 has an inside andoutside parameters designated in fields 610, 616. Range 606 has aninside and outside parameters designated in fields 612, 618. If thetrader wants to add an additional range or level, he or she can selecticon 620. If the trader wants to delete a range or level, he or she canselect the range and select icon 622. Icons 624 and 626 are used toaccept or cancel changes.

V. Spread Trading Example

FIG. 7 shows a display 700 of a spread market, which is based on legsshown in FIGS. 8 and 9. The display 700 shows a working column 702, bidquantity column 704, ask quantity column 706, and price column 708. Theworking column 702 displays working orders to buy or sell tradeableobjects. The bid quantity column 704 displays quantities associated withthe price levels in price column 708. The ask quantity column 706displays quantities associated with the price levels in price column708. The price column 708 shows price levels in one tick increments(prices can be positive or negative). FIGS. 8 and 9 show similar columnsto that shown in FIG. 7 and are referenced by like numerals. It shouldbe understood, however, that it is not necessary to understand thedetails of the display (shown in FIGS. 7-9).

As previously mentioned, a set of ranges and parameters are preferablyentered for each leg. In other words, using a display such as shown inFIG. 6, ranges can be set and parameters for each range can also be setfor each leg. Then, for example, if re-pricing in one leg involves ahigh transaction fee, the tolerance for market movement can be higherwhereas if re-pricing in another leg involves a very low transactionfee, the tolerance for market movement can be set lower. However, a setof one or more ranges may be shared between legs, if so programmed.

Table 2 (for the leg shown in FIG. 8) and Table 3 (for the leg in FIG.9) below show example range levels and parameters. The ranges shown inthe tables are the same for ease of explanation, but the presentinvention is not limited to such. Therefore, each table could havedifferent ranges and inside/outside parameters from each other, if sodesired. As pointed out earlier, these values can be input through anytype of display, an example of which is shown in FIG. 6.

TABLE 2 (for the leg shown in FIG. 8) Range No.: 1 2 3 Range: 0 ≦ X < 55 ≦ X < 10 10 ≦ X < ∞ Inside: 1 3 5 Outside: 2 3 5

TABLE 3 (for the leg shown in FIG. 9) Range No.: 1 2 3 Range: 0 ≦ X < 55 ≦ X < 10 10 ≦ X < ∞ Inside: 2 2 6 Outside: 3 3 6

Referring to FIG. 7, an order to buy 1 of the spread is shown at a priceof −53.0. As a result, the spread trading tool automatically would sendorders into the market for the legs of the spread. The leg ordersconsist of an order to buy 1 at 147.0, which is shown in FIG. 8, and anorder to sell 1 at 203.0, which is shown in FIG. 9. According to oneembodiment, the order to buy 1 at 147.0 is based on the best bid pricein the leg shown in FIG. 9, and the order to sell 1 at 203.0 is based onthe best offer price in the leg shown in FIG. 8.

Ordinarily when the inside and/or outside values are set to “0” and themarket conditions change in the leg shown in FIG. 8, the order in theleg shown in FIG. 9 is preferably re-priced so that the spread shown inFIG. 7 is maintained at −53. Likewise, when the market conditions changein the leg shown in FIG. 9, the order in the leg shown in FIG. 8 ispreferably re-priced so that the spread shown in FIG. 7 is maintained at−53. If market conditions change, but the orders are not re-priced, thenthe desired spread price achieved will not be what is shown in FIG. 7,rather it will be at an effective price that is higher or lower than −53depending on which way the market moves. However, in a practical sense,the automated spread trading tool will ordinarily move or re-price thoseorders so that the desired spread price is maintained.

However, by setting the inside and/or outside parameters to some valueother than “0,” the automated spread trading tool may be refrained fromconstantly moving or re-pricing the orders in legs to sustain thedesired spread price. For example, assuming a one to one ratio (e.g.,market changes by one tick results in the spread moving one tick)consider when the market moves up one tick in the leg shown in FIG. 9.The spread trading tool will preferably calculate an effective spreadorder price. Accordingly, the appropriate range and parameters areretrieved.

According to the preferred embodiments, the appropriate parameters areparameters that are associated with the leg in which a possible orderchange might occur. In this example, the parameters associated with theleg shown in FIG. 8 are retrieved (e.g., parameters in Table 2) as theleg order price in FIG. 8 might have to be moved or re-priced dependingon the next analysis.

FIG. 7 shows various range levels using brackets for ease ofillustration. If a desired spread order price falls within one of theranges, then the parameters for that range apply. For any buy spreadorders, range 1 (e.g., 0≦X<5) would include price levels or ticks −50.5,−51.0, −51.5, and −52.0. Note that some other price unit may be usedinstead of 0.5 increments. Similarly, the best bid is −51.0 and for anysell spread orders, range 1 would include price levels or ticks −50.5,−50.0, −49.5, and −49.0. Again, some other price unit may be usedinstead of 0.5 increments. For any buy spread orders, range 2 (e.g.,5≦X<10) corresponds to price levels −52.5, −53.0, −53.5, and −54.0. Forany sell spread orders, range 2 includes price levels −48.5, −48.0,−47.5, and −47.0. For any buy spread orders, range 3 (e.g., 10≦X<∞)corresponds to price levels −54.5, −55.0, −55.5, −60.0, and so on. Forany sell spread orders, range 3 corresponds to price levels −46.5,−46.0, −45.5, −45.0, and so on.

Accordingly, the desired buy spread order price is in one of the pricelevels in range 2. Range 2 in Table 2 results in an inside parameter of“3” and an outside parameter of “3.” Because the effective spread orderprice was only one tick difference from the desired spread order price,the calculated price falls with the boundaries (3 ticks above −147.0and/or 3 ticks below −147), or equivalently, the change in prices isless than 3 ticks. Therefore, the working leg order in FIG. 8 will nothave to be moved or re-priced. Then, if the trade had occurred at thatmoment, the trader would buy/sell the spread at the effective spreadprice. If, however, the effective spread order price fell outside of theinside and/or outside parameters, then the working leg order wouldpreferably be moved or re-priced in the market to maintain the desiredspread order price of −53.

VI. Conclusion

The preferred embodiments provide a flexible solution as they give atrader many possible options to configure how and when to limit thefrequency at which such trading tools mover or re-price orders in themarket. The preferred embodiments allow for one or more tolerance levelsto be set to determine when to move or re-price orders in the market.Also, the preferred embodiments may be used with any trading strategy toregulate order entry.

The foregoing description is presented to enable one of ordinary skillin the art to make and use the invention. Various modifications to thepreferred embodiment will be readily apparent to those skilled in theart and the generic principles herein may applied to other embodiments.Therefore, it should be understood that the above description of thepreferred embodiments, alternative embodiments, and specific examplesare given by way of illustration and not limitation. Many changes andmodifications come within the scope and spirit of the following claimsand equivalents thereto are claimed as the invention.

1. (canceled)
 2. A method for electronic trading, comprising: receiving,via a user input device, a target spread price for a spread between afirst tradeable object of a first exchange and a second tradeable objectof a second exchange; transmitting a first order for the first tradeableobject to the first exchange via a computing device, the first orderhaving a price based on inside market information for the secondtradeable object received from the second exchange and the target spreadprice; determining an effective spread price for the spread via thecomputing device, the effective spread price based on the price of thefirst order and an update to the inside market information for thesecond tradeable object; comparing the target spread price to an insidemarket for the spread; determining a price limit for the target spreadprice according to the comparison of the target spread price and theinside market for the spread; and updating the first order via thecomputing device according to the effective spread price being beyondthe price limit.
 3. The method of claim 2 where updating the first ordercomprises: transmitting a second order for the first tradeable object tothe first exchange via the computing device, the second order having aprice based on the update to the inside market information for thesecond tradeable object; and cancelling the first order.
 4. The methodof claim 3 where the computing device comprises a network of distributedcomponents.
 5. The method of claim 2 further comprising transmitting anorder for the second tradeable object to the second exchange via thecomputing device in response to execution of the first order.
 6. Themethod of claim 5 where the order for the second tradeable objectcomprises a price based on at least an execution price of the firstorder.
 7. The method of claim 5 where tradeable objects of the firstexchange comprise different tradeable objects of the second exchange. 8.A method for electronic trading, comprising: displaying an order for afirst tradeable object of a spread on a man-machine interface via adisplay of a computing device, the order having a price based on marketinformation for a second tradeable object of the spread; processing, viathe computing device, updates to the market information to determine aneffective price for a spread between the first tradeable object and thesecond tradeable object; and determining, via the computing device, anew order for the first tradeable object in response to the effectiveprice being outside a price threshold beyond a target price for thespread and being identified according to the target price.
 9. The methodof claim 8, further comprising transmitting the new order for the firsttradeable object to a first exchange associated with the first tradeableobject.
 10. The method of claim 9, further comprising transmitting anorder for the second tradeable object in response to execution of anyone of the order of the new order.
 11. The method of claim 8, where theupdates to the market information for the second tradeable objectcomprise a current highest bid price, a current ask price, a last tradequantity, a last traded price or combinations thereof
 12. Anon-transient computer readable medium having instructions storedthereon which when executed by a processor cause the processor to carryout acts comprising: receiving, via a user input device, a target spreadprice for a spread between a first tradeable object of a first exchangeand a second tradeable object of a second exchange; transmitting a firstorder for the first tradeable object to the first exchange via acomputing device, the first order having a price based on inside marketinformation for the second tradeable object received from the secondexchange and the target spread price; determining an effective spreadprice for the spread via the computing device, the effective spreadprice based on the price of the first order and an update to the insidemarket information for the second tradeable object; comparing the targetspread price to an inside market for the spread; determining a pricelimit for the target spread price according to the comparison of thetarget spread price and the inside market for the spread; and updatingthe first order via the computing device according to the effectivespread price being beyond the price limit.
 13. The non-transientcomputer readable medium of claim 12 where updating the first ordercomprises: transmitting a second order for the first tradeable object tothe first exchange via the computing device, the second order having aprice based on the update to the inside market information for thesecond tradeable object; and cancelling the first order.
 14. Thenon-transient computer readable medium of claim 13 where the computingdevice comprises a network of distributed components.
 15. Thenon-transient computer readable medium of claim 12 further comprisingtransmitting an order for the second tradeable object to the secondexchange via the computing device in response to execution of the firstorder.
 16. The non-transient computer readable medium of claim 15 wherethe order for the second tradeable object comprises a price based on atleast an execution price of the first order.
 17. The non-transientcomputer readable medium of claim 15 where tradeable objects of thefirst exchange comprise different tradeable objects of the secondexchange.